精煉重點 1:沒有標籤,就沒有歸屬;沒有預算,就沒有剎車。
精煉重點 2:成本不是會計事後算,是產品設計的一部分。
貝老闆:「昨天 GCP 刷了兩萬,Replit 費用也跳警示!發生什麼事!?我們是不是紅了?」
小可:「紅的是你的臉啦。站內日活 7,人手一個管理員帳號,你在跟雲端玩燒錢轉盤嗎?」
工程師 King:「我已經按照 Day 10 指示把 Cloud Runmin-instances=3
、Logging 全量、Vertex 調到a
系列大模型,還把 staging 也開 Always On。合理,不論是開發測試!還是任何流量來都擋得住! 」
AI 實習生(單眼冒??
):「我也照你說『盡可能快』,所以把 autoscaling 開到最大,最快。」
貝老闆:「那…可以先不要那麼快嗎?」
小可:「求救好威。」好威:「就說你省下那些錢付我顧問費就沒事了,FinOps 三步:看得見 → 控得住 → 變便宜。先讓錢有名字,再讓服務有刹車,最後才談折扣。把『成本』當功能做:沒有監控與預算線,就不准上線。」
標籤/歸屬(Tag/Label):在 GCP 替專案、環境、功能模組加上 labels: {env: prod|staging, team: web, feature: inference}
,Replit 專案名稱與說明也要寫清楚。這就像報帳要附抬頭,之後才能做「誰花的」統計。沒有標籤,就無法切帳、也無法談效率。
預算與異常警報:GCP 設 Budget(例如每月 1 萬)、門檻 50%/80%/100% 寄信+ Slack;再開 Cost Anomaly 監測。Replit 側設定組織上限與到期提醒。把「錢超標」變成跟錯誤 500 一樣的紅燈事件,有人值班、有人處理。
計費透明化(BigQuery 導出+Looker 報表):把 GCP 帳單匯出到 BigQuery,每日聚合到看板(活頁簿一頁叫「錢用去哪」)。最簡單的維度:服務別、環境別、團隊別、功能別。週會 5 分鐘過目,不看就等於沒做。
雲端剎車與速限:Cloud Run min-instances
設 0(冷啟動可接受才開)、Requests 限流;Vertex/LLM 設每日配額與單請求上限;Logging 設過濾與取樣,避免把 DEBUG 當日記本。Replit 先用 Static 部署驗證流量,真的上量才切 Autoscale,並關閉閒置工作執行緒與排程。
環境衛生:Staging/Dev 設 TTL 自動下線;資料庫用最小規格+關閉公網;物件儲存選單區域/冷存;跨區傳輸要有理由。把「不用的機器」當蟑螂看,一隻都不留。
用量來源追兇:爆量常見元凶是:無限迴圈的 Cron、未設快取的熱門 API、第三方爬蟲、錯誤重試。加上Rate Limit/CDN Cache,並為每個外部金流或 LLM 金鑰配一個 子 Proxy 金鑰,能細看誰在花。
DoD(Definition of Done)加入成本條款:
範例:LLM 請求成本估算心算法(非工程也會):
1 個請求 ≈(prompt tokens × 單價)+(output tokens × 單價)。
每日上限=單價 ×(峰值 QPS × 秒 × 小時)。先算最壞情境再砍半。
Replit 最小剎車:
把成本當 SLO 管:像處理延遲一樣處理「每使用者每日成本」。若突破門檻,自動降級模型或開啟快取。這讓團隊在速度與成本之間有「可預期的退讓」。
先歸戶再優化:沒有標籤就別談省錢。先讓花費能對到人、對到功能,責任清楚後,優化才有方向。AI 也能幫你列出「前 5 名燒錢榜」。
預算線就是功能線:Budget/Alert、Rate Limit、Logging 取樣、Staging TTL 都要寫進 PR Checklist。沒勾到就不准上線,跟資安一樣嚴格。
用 AI 做 FinOps 助理:丟入 BigQuery 帳單表,讓 AI 生成「本週異常」「無效花費 Top10」「關閉建議」。你要說清楚欄位與門檻,AI 才知道怎麼抓「可關可省」。
從最貴的一處下手:先找單一最大噴點(例如 Vertex、Egress、Logging),用一招解法(降規、快取、關 min instance)。80/20 原則比全面微調更有效。
「你是我的 FinOps 助理。已開啟 GCP Billing Export(BigQuery 資料表 gcp_billing.daily_cost
)。請用 SQL 產生:
project_id, labels.env, service
聚合的上週成本榜;